home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1999 January - Disc 2 / Macworld (1999-01) (Disk 2).dmg / Serious Demos / Symbolic Composer 4.2 / Environment / System / SYMBOL / Neurons / out-range < prev    next >
Text File  |  1998-10-23  |  972b  |  18 lines

  1. out-range
  2.  
  3. The next example shows how to convert length symbols into other length symbols. Note the use of out-range. This can be used to define what symbols are returned if the in and out positions are outside the source pattern. The syntax is (out-range below higher), where the below value is used when in or out tries to access symbols below the first symbol, and the higher value is used when in or out tries to access symbols higher than the last symbol in the pattern.
  4.  
  5. Note also the use of get-tick. This is internal function that converts the symbolic length values into tick values. This neuron performs length conversion where the output is the sum of the present and previous in values. out-range is used, since (in 1 -1) points outside the in pattern.
  6.  
  7. (def-neuron len-to-len2
  8.     (out-range 0 0)
  9.     (otherwise (+ (get-tick (in 1 0))
  10.                   (get-tick (in 1 -1))))
  11. )
  12.  
  13. (run-neuron 'len-to-len2
  14.             '(1/2 1/4 1/8 1/16 1/32))
  15.  
  16. --> (192 288 144 72 36)
  17.  
  18.